Internet communications networks or Internet Protocol, IP, communications networks support a variety of telecommunications services, including voice, audio, video and other data communications. Data are exchanged in packets using a set of communications protocols independent of underlaying transport technologies.
Examples of implementations of IP communications networks are, amongst others, Voice over IP, VoIP, networks and IP Multimedia Subsystem, IMS, communications networks.
Voice over Internet Protocol, VoIP, is a general term for voice or speech communications and multimedia communications sessions over packet switched IP networks. Other terms frequently encountered and synonymous with VoIP are IP telephony, Internet telephony, Voice over broadband, VoBB, broadband telephony, and broadband phone.
Using packet switched IP networks allows for efficient allocation of network resources, as packets are routed on paths with the least congestion. Packet header information comprises information about the packet's intended destination as well as information to reconstruct the data included in the packet at a receiving entity.
The IP Multimedia Subsystem, IMS, communications network is an architectural framework defined by the wireless standard setting body 3rd Generation Partnership Project, 3GPP, amongst others for delivering IP multimedia services to user terminals operating in a circuit switched or packet switched telecommunications network, for example.
Fixed and wireless, i.e. mobile, communications such as called W-CDMA, CDMA2000, GSM, GPRS, WLAN, WiMAX, and others are supported by IMS through gateway servers. Dedicated IMS user equipment such as mobile phones, Personal Digital Assistants, PDAs, and other communication equipment may directly register with an IMS communications network. The IMS also supports roaming in other networks or countries.
IP communications networks in general and IMS communications networks in particular typically comprise a separate content domain, in IMS also called user plane, and a separate signalling domain, in IMS also called control plane. The content domain operates for the actual exchange of media, for example audio, video, or data, between a calling party and a called party, during a communications session. The signalling domain, amongst others, operates to exchange signalling or control messages in relation to a communications session between a calling and called party, not only to establish or terminate a session but also during a session to provide additional services, for example. Besides the calling and called party other entities, such as gateway servers, media servers, voice mail servers, proxy servers, such as called Proxy-Call Session Control Function, P-CSCF, servers and subscriber registrar Serving-Call Session Control Function, S-CSCF, servers associated with both the calling party and the called party may be involved in a communication session.
The signalling protocol used in IMS communications networks is called Session Initialisation Protocol, SIP. SIP is a standardised application-layer control protocol for the exchange of signalling messages between entities of an IMS communications network. Using SIP provides for many advantages, for example, its scalability, its implementation and its support for both IP and conventional telephone communications.
The SIP protocol is text-based and incorporates many elements of the HyperText Transfer Protocol, HTTP, and the Simple Mail Transfer Protocol, SMTP. SIP call establishment poses large requirements on SIP entity processing capacity. The text based aspects of SIP imply that keywords and labels within a signalling message are recognized through ‘byte-by-byte’ character comparison. Headers of a SIP message have a high degree of flexibility in terms of their position in the SIP message. This means that when decoding (parsing) a SIP message, the decoder has to read the SIP message line-by-line, until the required SIP header is found. Keywords and labels in SIP message are generally case-insensitive. This has the effect that for recognizing keywords and labels, a parser has to convert each and every character, where case insensitivity applies, to a normalized case, such as upper case for example. Further, the headers in SIP messages have a variable length. There is no length indicator per line of text. This implies that when reading a line, a parser has to continue reading characters until a <carriage return><line feed>, <CR><LF>, combination is encountered.
These aspects, when using text-based signalling messages in an IP communications network, amongst others cause a relatively high processing load on the signalling processing entities in the network and consume a substantial amount of resources within such entities for encoding and decoding of the signalling messages. Further, text based signalling messages are regarded as being vulnerable to eavesdropping.
Object oriented programming languages, such as but not limited to JAVA, C#, C++, dot NET, Python, Perl and Ruby, are suitable for object oriented programming for executing operations in servers of, for example, an IP communications network. These object oriented programming languages utilize object oriented based data items such as object classes.
In present IMS communications networks, for example, JAVA is a commonly used object oriented programming language accommodated with a comprehensive SIP library, for applying object oriented processing of signalling messages by the service logic of an entity operating in the communications network.
Entities of an IP communications network which process received text based signalling messages applying object oriented programming, are arranged to convert (parse) received text based signalling messages into object oriented based data items, for a JAVA Application Programming Interface, API, to operate. The entities are also arranged to reconstruct object oriented based data items back to text based signalling messages (the inverse of the parsing process) for exchanging same with a next entity of a chain of entities in an IP communications network.
The conversion of text-based signalling messages to and from object oriented based data items causes a high load on the entities handling these signalling messages. In other words, this is very resource intensive for these entities.
Future utilization and the number of IP communications networks are expected to grow gradually, due to, among others, the increasing demand for IP services of users of communications devices, such as mobile telephones and other user equipment. One of the challenges for operators of IP communications networks is to facilitate this increasing demand and, at the same time, maintain or improve the reliability, efficiency and robustness of their network as a whole and the signalling domain in particular.